package co.edu.usbcali.presentation.businessDelegate;

import co.edu.usbcali.modelo.Eventos;
import co.edu.usbcali.modelo.Foto;
import co.edu.usbcali.modelo.Imagenes;
import co.edu.usbcali.modelo.TipoEventos;
import co.edu.usbcali.modelo.dto.EventosDTO;
import co.edu.usbcali.modelo.dto.ImagenesDTO;
import co.edu.usbcali.modelo.dto.TipoEventosDTO;
import java.util.List;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.model.StreamedContent;


/**
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public interface IBusinessDelegatorView {
    public List<Eventos> getEventos() throws Exception;

    public void saveEventos(Eventos entity) throws Exception;

    public void deleteEventos(Eventos entity) throws Exception;

    public void updateEventos(Eventos entity) throws Exception;

    public Eventos getEventos(Long idE) throws Exception;

    public List<Eventos> findByCriteriaInEventos(Object[] variables,
        Object[] variablesBetween, Object[] variablesBetweenDates)
        throws Exception;

    public List<Eventos> findPageEventos(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception;

    public Long findTotalNumberEventos() throws Exception;

    public List<EventosDTO> getDataEventos() throws Exception;

    public List<Imagenes> getImagenes() throws Exception;

    public void saveImagenes(Imagenes entity) throws Exception;

    public void deleteImagenes(Imagenes entity) throws Exception;

    public void updateImagenes(Imagenes entity) throws Exception;

    public Imagenes getImagenes(Long idImagen) throws Exception;

    public List<Imagenes> findByCriteriaInImagenes(Object[] variables,
        Object[] variablesBetween, Object[] variablesBetweenDates)
        throws Exception;

    public List<Imagenes> findPageImagenes(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception;

    public Long findTotalNumberImagenes() throws Exception;

    public List<ImagenesDTO> getDataImagenes() throws Exception;

    public List<TipoEventos> getTipoEventos() throws Exception;

    public void saveTipoEventos(TipoEventos entity) throws Exception;

    public void deleteTipoEventos(TipoEventos entity) throws Exception;

    public void updateTipoEventos(TipoEventos entity) throws Exception;

    public TipoEventos getTipoEventos(Long idTe) throws Exception;

    public List<TipoEventos> findByCriteriaInTipoEventos(Object[] variables,
        Object[] variablesBetween, Object[] variablesBetweenDates)
        throws Exception;

    public List<TipoEventos> findPageTipoEventos(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception;

    public Long findTotalNumberTipoEventos() throws Exception;

    public List<TipoEventosDTO> getDataTipoEventos() throws Exception;
    
    public void guardarArchivo(List<FileUploadEvent> file,Long idEvento) throws Exception;
    
    public List<StreamedContent> obtenerArchivos(Long idEvento) throws Exception;

    public List<Foto> getImagenesPorEvento(long idEvento)throws Exception;
}
